HAL SDIO constants migration

This section provides information about the HAL SDIO constants migration .

HAL SDIO data rate modes

HAL1

HAL2



#define HAL_SDIOS_DATA_RATE_SDR12
#define HAL_SDIOS_DATA_RATE_SDR25
#define HAL_SDIOS_DATA_RATE_SDR50
#define HAL_SDIOS_DATA_RATE_DDR50
typedef enum
{
  HAL_SDIO_SPEED_MODE_SDR12,
  HAL_SDIO_SPEED_MODE_SDR25,
  HAL_SDIO_SPEED_MODE_SDR50,
  HAL_SDIO_SPEED_MODE_DDR50,
  HAL_SDIO_SPEED_MODE_SDR104
} hal_sdio_speed_mode_t;

Related concept:


HAL SDIO bus width identifiers

HAL1

HAL2



#define HAL_SDIO_1_WIRE_MODE
#define HAL_SDIO_4_WIRES_MODE
typedef enum
{
  HAL_SDIO_BUS_WIDE_1BIT,
  HAL_SDIO_BUS_WIDE_4BIT,
  HAL_SDIO_BUS_WIDE_8BIT
} hal_sdio_bus_wide_t;

Related concept:


HAL SDIO 8-bit bus width support

HAL1

HAL2



#define HAL_SDIO_BUS_WIDTH_8BIT_NOT_SUPPORTED
#define HAL_SDIO_BUS_WIDTH_8BIT_SUPPORTED
typedef enum
{
  HAL_SDIO_BUS_WIDTH_8BIT_NOT_SUPPORTED,
  HAL_SDIO_BUS_WIDTH_8BIT_SUPPORTED
} hal_sdio_bus_width_8bit_t;

Related concept:


HAL SDIO data block sizes

HAL1

HAL2



#define HAL_SDIO_DATA_BLOCK_SIZE_1BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_2BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_4BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_8BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_16BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_32BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_64BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_128BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_256BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_512BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_1024BYTE
#define HAL_SDIO_DATA_BLOCK_SIZE_2048BYTE
typedef enum
{
  HAL_SDIO_BLOCK_SIZE_1BYTE,
  HAL_SDIO_BLOCK_SIZE_2BYTE,
  HAL_SDIO_BLOCK_SIZE_4BYTE,
  HAL_SDIO_BLOCK_SIZE_8BYTE,
  HAL_SDIO_BLOCK_SIZE_16BYTE,
  HAL_SDIO_BLOCK_SIZE_32BYTE,
  HAL_SDIO_BLOCK_SIZE_64BYTE,
  HAL_SDIO_BLOCK_SIZE_128BYTE,
  HAL_SDIO_BLOCK_SIZE_256BYTE,
  HAL_SDIO_BLOCK_SIZE_512BYTE,
  HAL_SDIO_BLOCK_SIZE_1024BYTE,
  HAL_SDIO_BLOCK_SIZE_2048BYTE
} hal_sdio_block_size_t;

Related concept:


HAL SDIO error codes

HAL1

HAL2

#define HAL_SDIO_ERROR_NONE
#define HAL_SDIO_ERROR_DATA_CRC_FAIL
#define HAL_SDIO_ERROR_DATA_TIMEOUT
#define HAL_SDIO_ERROR_TX_UNDERRUN
#define HAL_SDIO_ERROR_RX_OVERRUN
#define HAL_SDIO_ERROR_TIMEOUT
#define HAL_SDIO_ERROR_INVALID_CALLBACK
#define HAL_SDIO_ERROR_NONE
#define HAL_SDIO_ERROR_DATA_CRC_FAIL
#define HAL_SDIO_ERROR_DATA_TIMEOUT
#define HAL_SDIO_ERROR_TX_UNDERRUN
#define HAL_SDIO_ERROR_RX_OVERRUN
Reported via function return status.
See below note.

Note

Callbacks registration and handling has been subject to major changes. For detailed information, refer to HAL SDIO IRQ and callbacks migration.


HAL SDIO FBR support

HAL1

HAL2

#define HAL_SDIO_FBR_SUPPORT_CSA
#define HAL_SDIO_FBR_SUPPORT_POWER_SELECTION

Removed; these constants were used internally in HAL1 and do not impact user-level operations.


HAL SDIO function identifiers

HAL1

HAL2



#define HAL_SDIO_FUNCTION_0
#define HAL_SDIO_FUNCTION_1
#define HAL_SDIO_FUNCTION_2
#define HAL_SDIO_FUNCTION_3
#define HAL_SDIO_FUNCTION_4
#define HAL_SDIO_FUNCTION_5
#define HAL_SDIO_FUNCTION_6
#define HAL_SDIO_FUNCTION_7
typedef enum
{
  HAL_SDIO_FUNCTION_0,
  HAL_SDIO_FUNCTION_1,
  HAL_SDIO_FUNCTION_2,
  HAL_SDIO_FUNCTION_3,
  HAL_SDIO_FUNCTION_4,
  HAL_SDIO_FUNCTION_5,
  HAL_SDIO_FUNCTION_6,
  HAL_SDIO_FUNCTION_7
} hal_sdio_function_t;

Related concept:


HAL SDIO operation modes

HAL1

HAL2



#define HAL_SDIO_MODE_BYTE
#define HAL_SDIO_MODE_BLOCK
typedef enum
{
  HAL_SDIO_BLOCK_MODE_BYTE,
  HAL_SDIO_BLOCK_MODE_BLOCK
} hal_sdio_block_mode_t;

Related concept:


HAL SDIO operation code types

HAL1

HAL2



#define HAL_SDIO_OP_CODE_NO_INC
#define HAL_SDIO_OP_CODE_AUTO_INC
typedef enum
{
  HAL_SDIO_OP_CODE_INC_NO,
  HAL_SDIO_OP_CODE_INC_AUTO
} hal_sdio_operation_code_inc_t;

Related concepts:


HAL SDIO read-after-write flag

HAL1

HAL2



#define HAL_SDIO_WRITE_ONLY
#define HAL_SDIO_READ_AFTER_WRITE
typedef enum
{
  HAL_SDIO_WRITE_ONLY,
  HAL_SDIO_READ_AFTER_WRITE
} hal_sdio_raw_t;

Related concept:


HAL SDIO context types

HAL1

HAL2

#define SDIO_CONTEXT_DMA
#define SDIO_CONTEXT_IT
#define SDIO_CONTEXT_NONE
#define SDIO_CONTEXT_READ_MULTIPLE_BLOCK
#define SDIO_CONTEXT_READ_SINGLE_BLOCK
#define SDIO_CONTEXT_WRITE_MULTIPLE_BLOCK
#define SDIO_CONTEXT_WRITE_SINGLE_BLOCK

Removed; these constants were used internally in HAL1 and do not impact user-level operations.